<?php
/**
 * Created by PhpStorm.
 * User: Administrator
 * Date: 2019/4/17 0017
 * Time: 21:28
 */
$child_pid = pcntl_fork();
echo '父进程ID然后是子进程ID' . posix_getpid() .PHP_EOL;
echo '返回的是子进程ID:然后是0表示子进程创建成功' . $child_pid .PHP_EOL;
if ($child_pid == -1) {
    die('pcntl_fork failed ' . $php_errormsg);
} elseif ($child_pid > 0) {
    //父进程空间 返回子进程ID
    echo 'parentPID:' . posix_getpid() . PHP_EOL;
    echo 'childPID:' . $child_pid . PHP_EOL;

    $status = 0 ;
    echo  '子进程结束信息' . pcntl_wait($status) .PHP_EOL;//返回子进程ID
}elseif($child_pid == 0){
    sleep(500);
    echo '子进程空间' . PHP_EOL;
    echo 'id'.posix_getpid().PHP_EOL;
}
//父进程ID然后是子进程ID28492
//返回的是子进程ID:然后是0表示子进程创建成功28493
//parentPID:28492
//childPID:28493
//父进程ID然后是子进程ID28493
//返回的是子进程ID:然后是0表示子进程创建成功0
//子进程空间
//id28493
//子进程结束信息28493
//返回的是子进程ID:0
//for ($i = 0; $i < 1; $i++) {
//    $pid = pcntl_fork();
//    if ($pid < 0) {
//        exit('创建失败');
//    } elseif ($pid > 0) {
//        //父进程空间 返回子进程ID
//        // $a = 2;
//        //echo 'a2= ' . $a;
//        $status = 0;
//        $pid = pcntl_wait($status); //结束的子进程信息，阻塞状态
//        echo "子进程ID=" . $pid . PHP_EOL;
//
//    } elseif ($pid == 0) { // 返回0子进程空间
//        //子进程创建成功
////        echo '子进程空间';
//        echo '==' . $pid . PHP_EOL;
//        // $a = 3;
//        //echo 'a3= ' . $a;
//        sleep(20);
//    }
//
//}
